import * as ol from "../ol";
// 自定义WFSSDK类，继承自 ol.Vector
class WFSSDK extends ol.source.Vector {
    constructor(options) {
        console.log(options);
        let EPSG = '3857' || options.EPSG;
        console.log(EPSG);
        super({
            format: new ol.format.GeoJSON(),
            url: function(extent) {
                return (
                    options.url + '?service=WFS&' +
                    'version=1.1.0&request=GetFeature&typename='+ options.layerName +'&' +
                    'outputFormat=application/json&srsname=EPSG:' + EPSG + '&' +
                    'bbox=' +
                    extent.join(',') +
                    ',EPSG:' + EPSG
                );
            },
            strategy: ol.loadingstrategy.bbox,
        });
        // 创建图层对象
        let layer = new ol.layer.Vector({
            source: this,
            // 设置图层的Z轴索引。
            zIndex:options.zIndex,
            // 设置图层的透明度。
            opacity:options.opacity,
            // 设置图层可见的最小缩放级别。
            minZoom:options.minZoom,
            // 设置图层可见的最大缩放级别。
            maxZoom:options.maxZoom,
            style:options.styleFunction
        });
        // 为图层设置唯一的 ID
        if (options.layerId) layer.set('layerId', options.layerId);
        // 返回创建的图层对象
        return layer;
    }
}
export default WFSSDK